perm filename FIRST.REV[W78,JMC] blob
sn#330277 filedate 1978-01-20 generic text, type C, neo UTF8
COMMENT ⊗ VALID 00002 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00002 00002 Cartwright (1977) showed how to regard a LISP-type recursive
C00004 ENDMK
C⊗;
Cartwright (1977) showed how to regard a LISP-type recursive
program as a sentence of first order logic. Thus the well known
recursive definition of ⊗n!
!!aa1: %2n! ← qif n = 0 qthen 1 qelse n . (n - 1)!%1
gives rise to the sentence
!!aa2: %2∀n.(n! = qif n = 0 qthen 1 qelse n . (n - 1)!%1.
The formal similarity of ({eq aa1}) and ({eq aa2})
may be misleading; something substantial is being asserted.
({eq aa1}) is a computer program; it says that to compute the
value of ⊗n!,
one must evaluate the right hand side using the definition again
as necessary. Such a rule defines a partial function, because there
is no guarantee that the evaluation process will terminate. Indeed,
let us take the domain of ⊗n to be the set of all integers so that
the computation doesn't terminate for ⊗n negative.